<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>箭头函数对this的影响3</title>
</head>
<body>
    <button>xiasnn</button>
    <button>xiaxia</button>
    <script>
        let hd = {
            site : "要爱自己",
            bind : function(){
                let buttons = document.querySelectorAll('button');

                // 不用箭头函数
                // let self = this;
                // buttons.forEach(function(value){
                //     value.addEventListener('click',function(){
                //         // 这边的this指的是按钮
                //         console.log(`${this.innerHTML}${self.site}`);
                //     })
                // })


                // 用箭头函数
                buttons.forEach((value) => {
                    value.addEventListener('click',(event) => {
                        // 如果forEach不使用箭头函数，这边的this指向其父级作用域forEach中的函数的this指向（windows）
                        // 如果要得到对象的属性值，forEach中的函数须使用箭头函数，将其指向对象
                        console.log(`${event.target.innerHTML}${this.site}`);
                    })
                })

            }
        };
        hd.bind();
    </script>
</body>
</html>